The present invention relates to satellite communication systems, non-limiting examples of which include Digital Video Broadcasting (DVB) and the physical layer performance of the current DVB-RCS (Digital Video Broadcasting-Return Channel Satellite) standard for satellite communication systems.
In multi-access wireless communication systems, for example, Frequency Division Multiple Access (FDMA) systems, multiple users share the available system resources. A problem in systems where the communication channel is shared by several users is spectral spreading, wherein one channel “bleeds over” into another channel, which is referred to as Adjacent Channel Interference (ACI). This ACI problem can cause serious performance degradation. This is because in order to achieve high bandwidth/spectral efficiencies, the frequency separation between the adjacent channels (carriers) must be reduced, causing an increase in ACI and resulting in performance degradation.
The performance of such systems can be improved through a more judicious choice of the modulation and channel (error correction) coding in the physical layer function of the system. Continuous phase modulation is a known method to modulate the data in communication systems. Continuous phase modulator (CPM) modulates the carrier phase in a continuous manner and is known to improve spectral efficiency and power efficiency of the data signal.
Operation of a transmitter and a receiver for a satellite communication system using continuous phase modulation is described below.
FIG. 1 illustrates a prior art transmitter 100 for a conventional satellite communication system.
As illustrated in FIG. 1, transmitter 100, which may transmit over a channel 112 includes a bit source 102, a binary convolutional coder 104, a S-random interleaver 106, a bit-to-symbol generator 108 and a CPM 110. In this illustration, each of bit source 102, binary convolutional coder 104, S-random interleaver 106, bit-to-symbol generator 108, CPM 110 and channel 112 are illustrated as distinct devices. However, at least two of bit source 102, binary convolutional coder 104, S-random interleaver 106, bit-to-symbol generator 108 and CPM 110 may be combined as a unitary device.
Bit source 102 is arranged to provide a data bits signal 114 to binary convolutional coder 104. Binary convolutional coder 104 is arranged to receive data bits signal 114 from bit source 102 and provide an encoded data bits 116 to S-random interleaver 106. S-random interleaver 106 is arranged to receive encoded data bits 116 from binary convolutional coder 104 and provide a scrambled data bits 118 to bit-to-symbol generator 108. Bit-to-symbol generator 108 is arranged to receive scrambled data bits 118 from S-random interleaver 106 and provide a data symbols signal 120 to CPM 110. CPM 110 is arranged to receive data symbols signal 120 from bit-to-symbol generator 108 and provide a modulated waveform signal 122 to channel 112. Channel 112 is arranged to receive modulated waveform 122 from CPM 110 and provide a channel output 124.
Bit source 102 is operable to provide data bits signal 114 to be transmitted through channel 112. Non-limiting examples for bit source 102 include data, images, video, audio, etc.
Binary convolutional coder 104 is operable to encode data bits signal 114 using a convolutional code and provides forward error correction on data bits 114. Non-limiting examples of convolutional coding include recursive and non-recursive, systematic and non-systematic convolutional codes. Purpose of forward error correction (FEC) is to improve the capacity of a channel by adding some carefully designed redundant information to the data being transmitted through the channel. Binary convolution coding is a form of channel coding to add this redundant information to the data.
S-random interleaver 106 is operable to scramble the encoded data bits 116 by rearranging the bit sequence in order to improve error rate performance and lower the error floors. Interleaving is a process of rearranging the ordering of a data sequence in a one to one deterministic format. The inverse of this process is calling deinterleaving, which restores the received sequence to its original order. Interleaving is used to enhance the error correcting capability of coding. An S-random interleaver (where S=1, 2, 3 . . . ) is a “semi-random” interleaver, which changes the order of the data sequence of incoming input symbols, and generally provides the permuted data sequence in the form of an interleaving matrix.
Bit-to-symbol generator 108 is operable to convert the scrambled data bits 118 to data symbols signal 120 in preparation for modulation. CPM 110 is operable to modulate data symbols signal 120 using a modulation scheme. Non-limiting examples of modulation schemes provided by CPM 100 include minimum shift keying (MSK) and Gaussian minimum shift keying (GMSK). Modulated data symbols signal 122 is transmitted to external entities (not shown) via channel output 124. Channel output 124 may be considered as part of the external entities.
FIG. 2 illustrates a prior art receiver 200 for a conventional satellite communication system.
As illustrated in FIG. 2, receiver 200 includes a CPM correlator bank 202, a CPM detector 204, a S-random deinterleaver 206, a binary convolutional decoder 208, and a S-random interleaver 210. In this illustration, each of CPM correlator bank 202, CPM detector 204, S-random deinterleaver 206, binary convolutional decoder 208, and S-random interleaver 210 are illustrated as distinct devices. However, at least two of CPM correlator bank 202, CPM detector 204, S-random deinterleaver 206, binary convolutional decoder 208, and S-random interleaver 210 may be combined as a unitary device.
CPM correlator bank 202 is arranged to receive channel output 212 from a transmitting source, for example, channel output 124 from transmitter 100. CPM detector 204 is arranged to receive statistical estimates of all possible transmitted CPM waveforms 214 from CPM correlator bank 202 and scrambled estimates of the probability that the transmitted codebits (i.e. bits generated by the convolutional code) are either a 1 or 0 from S-random interleaver 210 and output probability estimates of the transmitted symbols as a detected signal 216 to S-random deinterleaver 206. S-random deinterleaver 206 is arranged to receive the updated probability estimates of the transmitted symbols as detected signal 216 from CPM detector 204 and output descrambled probability estimates of the transmitted codebits as a descrambled signal 218 to binary convolutional decoder 208. Binary convolutional decoder 208 is arranged to receive descrambled signal 218 from S-random deinterleaver 206 and output a bit sequence 220 to external entities (not shown) and codebit probabilities as decoded signal 222 to S-random interleaver 210. S-random interleaver 210 is arranged to receive decoded signal 222 from binary convolutional decoder 208 and output scrambled codebit probabilities as a signal 224 to CPM detector 204.
CPM correlator bank 202 operates to receive channel output 212 from a transmitting source, for example transmitter 100. CPM correlator bank 202 may operate to correlate the received signal with N possible transmitted signals, where N is a finite integer number and depends on the specific choice of CPM modulation parameters. CPM correlator bank functions as a matched filter and provides a matrix indicating how closely related the received signal may be to each of those N possible transmitted signals. Correlated signal 214 provides a statistical indication as to which one of N possible transmitted signals may be the received signal.
CPM detector 204 is operable to use the statistics provided by correlated signal 214 to perform decoding of a received signal for providing an estimate of the received symbols. Non-limiting examples of decoding algorithms performed by CPM detector 204 includes Viterbi, BCJR, etc. CPM detector 204 may also operate to receive scrambled probabilities of the transmitted codebits being either a 1 or a 0 (i.e. bits generated by the convolutional code) as signal 224 from S-random interleaver 210 in order to provide a better estimate of the received signal.
Every interleaver has a corresponding deinterleaver, which acts on the interleaved data sequence and restores it to its original order. The de-interleaving matrix is generally the transpose of the interleaving matrix. S-random deinterleaver 206 is operable to descramble the detected signal 216 from CPM detector 204. S-random deinterleaver 206 operates to provide the descrambled signal 218 to binary convolutional decoder 208.
Binary convolutional decoder 208 may operate to use a decoding algorithm to decode using descrambled probabilities from descrambled signal 218 for providing a decoded signal 222 and bit sequence 220. Non-limiting examples of decoding algorithms include Viterbi, BCJR, etc.
S-random interleaver 210 is operable to improve the error rate performance by feeding the scrambled signal 224 back to CPM detector 204. The goal of receiver 200 is to recover the received signal such that bit sequence 220 recovered by receiver 200 matches the bit sequence provided by the transmitting source.
The first pass through CPM detector 204, S-random deinterleaver 206 and binary convolutional decoder 208 provides an estimate of bit sequence 220 which may match with the transmitted bit source. The operation of S-random interleaver 210 providing feedback to CPM detector 204 improves the signal estimate with successive iterations though the feedback loop, until recovered information matches information provided by the transmitting source or until a maximum number of iterations are performed, whichever occurs first.
The operation of a conventional transmitter, which involved encoding, scrambling and modulation of a bit source for transmission via a channel of a communication system was discussed previously with respect to FIG. 1. The operation of a conventional receiver, which involved correlating, descrambling and decoding of the received bit source from the channel to recover the original bit source, was discussed with respect to FIG. 2.
In communication systems, ACI can seriously impair performance, especially when high bandwidth efficiencies are desired. In order to achieve high bandwidth/spectral efficiencies, the frequency separation between the adjacent channels (carriers) must be reduced, causing an increase in ACI and resulting in performance degradation. A common practice to improve the performance is by applying interference cancellation at the receiver however, this entails a significant increase in the complexity.
Alternatively, the performance could also be improved using a continuous phase modulation scheme with a more judicious choice of the modulation and channel (error correction). Through the design of the CPM phase pulse and selection of the remaining modulation parameters, power spectrum of the CPM signal can be shaped to improve the resilience to ACI.
Additionally, with the continuous phase modulation schemes used by conventional CPMs, error rate performance for information flow between a transmitter and a receiver for a satellite communication system does not provide optimum results in recovering the bit source at the receiver as compared to the transmitted bit source.
What is needed is an improved CPM scheme for communication systems for increasing error rate performance of information flow. An improved CPM scheme should provide an improved resilience to adjacent channel interference and also improve error rate performance for both high and low frame error rates.